package cn.lin.factory;

import java.math.BigDecimal;


/**
 * @author liufl E-mail:Huberier@allpyra.com
 * @version 创建时间：2017年8月16日 上午11:12:30
 * 折扣券
 */
public class OperatorFactoryDiscount extends OperatorIFactory{

	//工厂
	@Override
	public OperatorVo getOperator() {
		return new OperatorVoDiscount();
	}

	//策略
	@Override
	public BigDecimal getResult(OperatorVo voParent) {
		OperatorVoDiscount vo = (OperatorVoDiscount) voParent;
		vo.setDiscount(new BigDecimal(0.9));
		BigDecimal totalPrice = vo.getPrice().multiply(new BigDecimal(vo.getSum())).multiply(vo.getDiscount()).setScale(2,BigDecimal.ROUND_HALF_UP);
		return totalPrice;
	}
	
	public static void main(String[] args) {
		System.out.println(new BigDecimal(200.4).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_UP));//无脑进1
		System.out.println(new BigDecimal(200.4).divide(new BigDecimal(100)).setScale(2,BigDecimal.ROUND_HALF_UP));//四舍五入
	}
}

